<template id='changeEmail'>
  <div class="changeEmail">
    <SignCard :options="changEmailData" @click="submit">
      <template v-slot:descs>
        <div class="descs">
          <p class="desc">{{ changEmailData.desc }}</p>
        </div>
      </template>
      <template v-slot:form>
        <div class="form">
          <ZyInput :zyModel="changEmailData.email" ref="email"></ZyInput>
          <ZyInput :zyModel="changEmailData.password" ref="password" class="zInput"></ZyInput>
        </div>
      </template>
    </SignCard>
  </div>
</template>

<script>
// 这里可以导入其他文件（比如：组件，工具js，第三方插件js，json文件，图片文件等等）
import { createNamespacedHelpers } from "vuex";
const changeEmail = createNamespacedHelpers('changeEmail');
export default {
  name: "changeEmail",
  components: {},
  // 定义属性
  data() {
    return {};
  },
  props: {
  },
  // 计算属性，会监听依赖属性值随之变化
  computed: {
    ...changeEmail.mapState(['changEmailData']),
  },
  // 监控data中的数据变化
  watch: {},
  // 方法集合
  methods: {
    async submit() {
      let email = this.$refs.email.check("email");
      let password = this.$refs.password.check("password");
      if (email && password) {
        let res = await this.$api.profile.changEmailVerifyApi({
          "email": this.changEmailData.email.value,
          "pwd": this.changEmailData.password.value,
        })
        if (this.$isCode(res, true)) {
          this.$emit('submit')
        }
      }
    },
    //重置校验
    reset() {
      this.$refs.email.reset();
      this.$refs.password.reset();
    },
  },
  // 生命周期 - 创建完成（可以访问当前this实例）
  created() { },
  // 生命周期 - 挂载完成（可以访问DOM元素）
  mounted() { },
  beforeCreate() { }, // 生命周期 - 创建之前
  beforeMount() { }, // 生命周期 - 挂载之前
  beforeUpdate() { }, // 生命周期 - 更新之前
  updated() { }, // 生命周期 - 更新之后
  beforeDestroy() { }, // 生命周期 - 销毁之前
  destroyed() { }, // 生命周期 - 销毁完成
  activated() { }, // 如果页面有keep-alive缓存功能，这个函数会触发
};
</script>

<style lang='less' scoped>
.changeEmail {
  .descs {
    margin-top: 26px;
    text-align: center;
    width: 382px;

    .desc {
      color: #a8a8a8;
      font-size: 18px;
      margin-top: 15px;
      line-height: 1.5;
    }

    .desc:nth-child(1) {
      margin-top: 0px;
    }
  }

  .form {
    margin-top: 43px;

    .zInput {
      margin-top: 36px;
    }
  }
}

//手机样式
@media screen and (max-width: 650px) {
  .descs {
    width: 100% !important;
  }

  .form {
    width: 100% !important;
  }
}
</style>